package 正则表达式;

import java.util.Scanner;

public class 身份证练习 {
    public static void main(String[] args) {
        //提示用户输入您的身份证号
        System.out.println("请输入您的身份证号");
        String input=new Scanner(System.in).nextLine();
        //2.编辑正则表达式
        //身份证号的规律:一般都是18位,前17位都是数字,最后一位可能是数字,也有可能是X
        //String regex = "[0-9]{17}[0-9X]";
        /*单个\在java中有特殊的意义,认为这是一个转义符号
         * 所以如果你想单纯的表示这就是一个\,需要在它的前面加一个用来转义的\
         * 也就是\\*/
        String regex="\\d{17}[0-9X]";//前面定义的是位数后面是范围
        //3.判断
        if (input.matches(regex)){
            System.out.println("输入正确");
        }else {
            System.out.println("输入错误");
        }
    }
}
